Django项目部署之服务器安全

您所在的位置:网站首页 我去过一次日本 日语作文 Django项目部署之服务器安全

Django项目部署之服务器安全

#Django项目部署之服务器安全| 来源: 网络整理| 查看: 265

http://www.maiziedu.com/ 

Django

项目部署之服务器安全

  

跨站脚本安全保护

(Cross site scripting protection) 

  

跨站脚本攻击

(XSS)

通常发生于站点存储和使用不安全的内容,

例如数据库里存

储的用户内容是用户的脚本,

这些脚本读取后未经处理便执行导致了网站的不安

全。例如:

 

  

 

... 

  

var

是来自用户类似于这样的内容:

 

  

'class1 onmouseover=javascript:func()' 

这样就可能导致浏览器执行不安全的脚本。

为了避免这类问题,

Django

的模

版有一些自动过滤特殊字符的机制,类似于

‘’

之类的字符都会被过滤。如

果你确定某些内容是完全安全的,不是来自用户的非法输入,想展示在页面上,

你得在调用这些字符串的时候用

safe

过滤器,并且在合适的地方用双引号:

 

... 

  

跨站请求伪造保护

(Cross site request forgery (CSRF) protection) 

  

跨站请求伪造允许一个未知用户伪装成登录用户去提交表单、

请求数据。

例如:

 

  

A

站的

Javascript

在用户打开

B

站之后,提交了

B

站的一个表单到

B

站(因为

这时候用户可能已经登录了

B

站,

所以

B

站以为这是用户提交的)

但是这不是

用户的行为。

 

  

Django

有一些

CSRF

保护的模块,你必须在

MIDDLEWARE_CLASSES 

里面加上:

 

  

'django.middleware.csrf.CsrfViewMiddleware' 

这样,在你的

form

里必须加上

{% csrf_token %}

才能通过服务器的验证,保

证该表单是来自真正的用户:

 

{% csrf_token %} 

  

值得注意的是,当你把

'django.middleware.csrf.CsrfViewMiddleware' 

加入到

MIDDLEWARE_CLASSES

的时候,

该设置会对全站生效,



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3